/*! \file MceTimings.h translates CCF to MceIR format. */
#ifndef __PRONTO_H_INCLUDED__
#define __PRONTO_H_INCLUDED__

#include "Parsers.h"
#include "MceTypes.h"

/*! Translates CCF pronto IR codes to MceIr format. */
class MceTimings
{
	PtrSize * m_Timings;
	PtrSize   m_Blasters;
	PtrSize   m_Frequency;
	size_t    m_Count;
	void init ( UIntVector ccf,  unsigned int repeats, PtrSize blasters);
public:
	MceTimings();
	MceTimings(UIntVector ccf);
	MceTimings(UIntVector ccf, unsigned int repeats);
	MceTimings(UIntVector ccf,  unsigned int repeats, PtrSize blasters);
	~MceTimings();

	bool fromCCF ( UIntVector ccf, unsigned int repeats );
	
	PtrSize * getTimings(); // dont free what is returned here please.
	size_t	getCount ();
	PtrSize getBlasters();
	void setBlasters( PtrSize value );
	PtrSize getFrequency();
};

#endif

